package JDBC_Test;

import java.sql.*;

//存在SQL注入漏洞
public class Jdbc_01 {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        // 1、加载驱动,固定写法
        // mysql8.0以上 "mysql."后面要加上"cj."   mysql 8.0为com.mysql.cj.jdbc.Driver
        Class.forName("com.mysql.jdbc.Driver");//获取字节码对象


        // 2、用户信息和URL
        //现在的8.0版本需要加时区  jdbc:mysql://local:3306/(你自己的数据库名字）  ？（记得后面加问号）serverTimezone=UTC       这样就可以了
        String url ="jdbc:mysql://localhost:3306/jdbcstudy?useUnicode=true&characterEncoding=utf8&useSSL=true";
                                                // 数据库      编码           字符集编码              使用安全的连接

        String username ="root";
        String password ="123456";

        // 3、连接成功，返回数据库对象   Connection 代表数据库
        Connection connection = DriverManager.getConnection(url, username, password);


        // 4、执行SQL的对象      Statement 执行SQL的对象
        Statement statement = connection.createStatement();


        // 5、执行sQL的对象 去执行sQL，可能存在结果，查看返回结果
        String sql ="SELECT * from users";

        //返回的结果集，结果集中封装了我们全部的查询结果
        ResultSet resultSet = statement.executeQuery(sql);//执行查询，statement还有插入、更新之类，具体执行什么就用什么



        while (resultSet.next()){

            System.out.println("id="+resultSet.getObject("id"));
            System.out.println("name="+resultSet.getObject("NAME"));
            System.out.println("pwd="+resultSet.getObject("PASSWORD"));
            System.out.println("email="+resultSet.getObject("email"));
            System.out.println("birthday="+resultSet.getObject("birthday"));

            System.out.println("-----------------------------------------------------------------");



        }
        // 6、释放连接
        resultSet.close();
        statement.close();
        connection.close();

    }
}
